package com.ruoyi.wvp.service;

import java.util.List;

import com.ruoyi.wvp.domain.Surveillance;
import com.ruoyi.wvp.domain.SurveillanceEvent;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/**
 * ai摄像头事件Service接口
 * 
 * @author ruoyi
 * @date 2024-07-29
 */
public interface ISurveillanceEventService extends IService<SurveillanceEvent>{
    /**
     * 查询ai摄像头事件
     * 
     * @param id ai摄像头事件主键
     * @return ai摄像头事件
     */
    public SurveillanceEvent selectSurveillanceEventById(Long id);

    /**
     * 查询ai摄像头事件列表
     * 
     * @param surveillanceEvent ai摄像头事件
     * @return ai摄像头事件集合
     */
    public List<SurveillanceEvent> selectSurveillanceEventList(SurveillanceEvent surveillanceEvent);

    /**
     * 新增ai摄像头事件
     * 
     * @param surveillanceEvent ai摄像头事件
     * @return 结果
     */
    public int insertSurveillanceEvent(SurveillanceEvent surveillanceEvent);

    /**
     * 修改ai摄像头事件
     * 
     * @param surveillanceEvent ai摄像头事件
     * @return 结果
     */
    public int updateSurveillanceEvent(SurveillanceEvent surveillanceEvent);

    /**
     * 批量删除ai摄像头事件
     * 
     * @param ids 需要删除的ai摄像头事件主键集合
     * @return 结果
     */
    public int deleteSurveillanceEventByIds(Long[] ids);

    /**
     * 删除ai摄像头事件信息
     * 
     * @param id ai摄像头事件主键
     * @return 结果
     */
    public int deleteSurveillanceEventById(Long id);

     /**
        * 查询所有ai摄像头事件信息
        *
        * @return 结果
        */
    List<SurveillanceEvent> listAll(SurveillanceEvent surveillanceEvent);
     /**
        * 分页查询ai摄像头事件信息
        *
        * @return 结果
        */
    Page<SurveillanceEvent> pageList(Page<SurveillanceEvent> page,SurveillanceEvent surveillanceEvent);

    boolean addSurveillanceEvent(SurveillanceEvent surveillanceEvent);

    void freeSpace();
}
